From b069a48abd62a669851b9c3b501d579748dab0fd Mon Sep 17 00:00:00 2001
From: Erico Nunes <nunes.erico@gmail.com>
Date: Mon, 3 Oct 2022 18:16:55 +0200
Subject: [PATCH] efivar: isolate makeguids host tool build

efivar build includes a 'makeguids' host tool which is normally built by
distributions during the package build step. This is unfortunately not
written with cross-compilation in mind, since it needs to build for the
host architecture, including the build of object files which it then
assumes can be linked into the target library.
To make the packaging process simpler for a cross-compilation system
like Buildroot, separate the 'makeguids' tool build to an explicit make
target and remove target build dependencies from it.
This way, Buildroot can build the tool separately in a host build step
and the target build step can then be straightforward.

Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
---
 src/Makefile | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/src/Makefile b/src/Makefile
index 0e423c4..82c59c2 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -68,7 +68,6 @@ makeguids : LDFLAGS=$(HOST_LDFLAGS)
 makeguids : CCLDFLAGS=$(HOST_CCLDFLAGS)
 makeguids : $(MAKEGUIDS_OBJECTS)
 
-$(MAKEGUIDS_OUTPUT) : makeguids
 $(MAKEGUIDS_OUTPUT) : guids.txt
 	@set -e ; \
 	missing=no ; \
@@ -81,9 +80,9 @@ $(MAKEGUIDS_OUTPUT) : guids.txt
 	if [ "$${missing}" != "no" ]; then \
 		exit 1 ; \
 	fi
-	./makeguids $(LD_DASH_T) guids.txt guid-symbols.c include/efivar/efivar-guids.h guids.lds
+	makeguids $(LD_DASH_T) guids.txt guid-symbols.c include/efivar/efivar-guids.h guids.lds
 
-prep : makeguids $(GENERATED_SOURCES)
+prep : $(GENERATED_SOURCES)
 
 $(LIBEFIVAR_OBJECTS) $(LIBEFIBOOT_OBJECTS) : prep
 
-- 
2.37.3

